<template>
	<div class="scroll">
		<h3>
			游侠<br/>攻略
		</h3>
		<ul :class="{animationTop}">
			<li v-for="item in scrollList" :key="item.id">
				<span></span>
				{{item.title}}
			</li>
		</ul>
	</div>
</template>

<script>
	export default{
		name:'Scroll',
		props:['propscroll'],
		data(){
			return{
				animationTop:false,
				scrollList : []
			}
		},
		watch:{
			propscroll(){
				this.scrollList=this.propscroll
			}
		},
		mounted(){
			setInterval(this.showlist,2000)
		},
		methods:{
			//每隔两秒，数据向上滚动一条
			//将移出去的数据剪到数组的最后一条;animationTop恢复成false（才能保证下一次执行滚动的时候有效果）
			showlist(){
			//每隔2秒，将当前的第一条数据移除-0.67rem
			this.animationTop=true
			//在2秒之间，执行；500毫秒之后；将当前数组的第一条数据添加到数组的末尾
			setTimeout(()=>{
			this.scrollList.push(this.scrollList[0])
			//将当前已经移除的第一条数据删除
			this.scrollList.shift()
			//动画停止，等待下一次播放
			this.animationTop=false
			},1000)
			}
		}
	}
</script>

<style scoped>
	.scroll .animationTop{
		margin-top: -0.67rem;
		height: 2.17rem;
		transition: all 1s;
	}
	.scroll{
		width: 100%;
		height: 1.5rem;
		/* 渐变发生在背景图片上面的样式 */
		background-image: linear-gradient(#fbffaf,#ffffed);
		overflow: hidden;
	}
	.scroll h3{
		height: 1.5rem;
		width: 15%;
		float: left;
		font-size: 0.5rem;		
		display: flex;
		align-items: center;
		justify-content: center;
		color: gold;
		font-style: italic;
		font-weight: bold;
	}
	.scroll ul{
		float: left;
		width: 75%;
		margin-left: 0.4rem;
		height: 1.5rem;
	}
	/* 设置省略号；行高【限制每次只能看到两条数据】 */
	.scroll ul li{
		text-overflow: ellipsis;
		white-space: nowrap;
		overflow: hidden;
		line-height: 0.67rem;
		font-size: 0.3rem;
	}
	.scroll ul li span{
		display: inline-block;
		width: 0.2rem;
		height: 0.2rem;
		border-radius: 0.1rem;
		background-color: goldenrod;
		margin-right: 0.2rem;
	}
</style>
